<!doctype html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><style>/* copy from https://github.com/sindresorhus/github-markdown-css/ */

html,body{background-color: #ffffff;}

.markdown-body {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  line-height: 1.5;
  color: #333333;
  font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji;
  font-size: 16px;
  line-height: 1.5;
  word-wrap: break-word;
}

.markdown-body .octicon {
  display: inline-block;
  fill: currentColor;
  vertical-align: text-bottom;
}

.markdown-body figure{margin:0;padding:0; display:table;}
.markdown-body figure figcaption{font-size:92%; text-align:center; color:#09844f;}

.markdown-body .anchor {
  float: left;
  line-height: 1;
  margin-left: -20px;
  padding-right: 4px;
}

.markdown-body .anchor:focus {
  outline: none;
}

.markdown-body h1 .octicon-link,
.markdown-body h2 .octicon-link,
.markdown-body h3 .octicon-link,
.markdown-body h4 .octicon-link,
.markdown-body h5 .octicon-link,
.markdown-body h6 .octicon-link {
  color: #0595bf;
  vertical-align: middle;
  visibility: hidden;
}

.markdown-body h1:hover .anchor,
.markdown-body h2:hover .anchor,
.markdown-body h3:hover .anchor,
.markdown-body h4:hover .anchor,
.markdown-body h5:hover .anchor,
.markdown-body h6:hover .anchor {
  text-decoration: none;
}

.markdown-body details {
  display: block;
}

.markdown-body summary {
  display: list-item;
}

.markdown-body a {
  background-color: initial;
}

.markdown-body a:active,
.markdown-body a:hover {
  outline-width: 0;
}

.markdown-body strong {
  font-weight: inherit;
  font-weight: bolder;
}
.markdown-body strong{
  color: #333333;
}
.markdown-body em{
  color: #333333;
}

.markdown-body h1 {
  font-size: 2em;
  margin: .67em 0;
}

.markdown-body img {
  border-style: none;
}

.markdown-body code,
.markdown-body kbd,
.markdown-body pre {
  font-family: monospace,monospace;
  font-size: 1em;
}

.markdown-body hr {
  box-sizing: initial;
  height: 0;
  overflow: visible;
}

.markdown-body input {
  font: inherit;
  margin: 0;
}

.markdown-body input {
  overflow: visible;
}

.markdown-body [type=checkbox] {
  box-sizing: border-box;
  padding: 0;
}

.markdown-body * {
  box-sizing: border-box;
}

.markdown-body input {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

.markdown-body a {
  color: #0366dd;
  text-decoration: none;
}
.markdown-body mjx-container[jax="SVG"] > svg a{fill:#0366dd;stroke: #0366dd;}

.markdown-body a:hover {
  text-decoration: underline;
}

.markdown-body strong {
  font-weight: 600;
}

.markdown-body hr:after,
.markdown-body hr:before {
  display: table;
  content: "";
}

.markdown-body hr:after {
  clear: both;
}

.markdown-body table {
  border-spacing: 0;
  border-collapse: collapse;
}

.markdown-body td,
.markdown-body th {
  padding: 0;
}

.markdown-body details summary {
  cursor: pointer;
}

.markdown-body kbd {
  display: inline-block;
  padding: 3px 5px;
  font: 12px SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;
  line-height: 12px;
  color: #09844f;
  vertical-align: middle;
  background-color: #f8f8f8;
  border: 1px solid #e2e2e2;
  border-radius: 3px;
}

.markdown-body h1,
.markdown-body h2,
.markdown-body h3,
.markdown-body h4,
.markdown-body h5,
.markdown-body h6 {
  margin-top: 0;
  margin-bottom: 0;
}

.markdown-body h1 {
  font-size: 32px;
}

.markdown-body h1,
.markdown-body h2 {
  font-weight: 600;
}

.markdown-body h2 {
  font-size: 24px;
}

.markdown-body h3 {
  font-size: 20px;
}

.markdown-body h3,
.markdown-body h4 {
  font-weight: 600;
}

.markdown-body h4 {
  font-size: 16px;
}

.markdown-body h5 {
  font-size: 14px;
}

.markdown-body h5,
.markdown-body h6 {
  font-weight: 600;
}

.markdown-body h6 {
  font-size: 12px;
}

.markdown-body p {
  margin-top: 0;
  margin-bottom: 10px;
}

.markdown-body blockquote {
  margin: 0;
}

.markdown-body ol,
.markdown-body ul {
  padding-left: 0;
  margin-top: 0;
  margin-bottom: 0;
}

.markdown-body ol ol,
.markdown-body ul ol {
  list-style-type: lower-roman;
}

.markdown-body ol ol ol,
.markdown-body ol ul ol,
.markdown-body ul ol ol,
.markdown-body ul ul ol {
  list-style-type: lower-alpha;
}

.markdown-body dd {
  margin-left: 0;
}

.markdown-body code,
.markdown-body pre {
  font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;
  font-size: 12px;
}

.markdown-body pre {
  margin-top: 0;
  margin-bottom: 0;
}

.markdown-body input::-webkit-inner-spin-button,
.markdown-body input::-webkit-outer-spin-button {
  margin: 0;
  -webkit-appearance: none;
  appearance: none;
}

.markdown-body:after,
.markdown-body:before {
  display: table;
  content: "";
}

.markdown-body:after {
  clear: both;
}

.markdown-body>:first-child {
  margin-top: 0!important;
}

.markdown-body>:last-child {
  margin-bottom: 0!important;
}

.markdown-body a:not([href]) {
  color: inherit;
  text-decoration: none;
}

.markdown-body blockquote,
.markdown-body details,
.markdown-body dl,
.markdown-body ol,
.markdown-body p,
.markdown-body pre,
.markdown-body table,
.markdown-body ul {
  margin-top: 0;
  margin-bottom: 16px;
}

.markdown-body hr {
  height: .25em;
  padding: 0;
  margin: 24px 0;
  background-color: #e2e2e2;
  border: 0;
}

.markdown-body blockquote {
  padding: 0 1em;
  color: #636363;
  border-left: .25em solid #bbbbbb;
}

.markdown-body blockquote>:first-child {
  margin-top: 0;
}

.markdown-body blockquote>:last-child {
  margin-bottom: 0;
}

.markdown-body h1,
.markdown-body h2,
.markdown-body h3,
.markdown-body h4,
.markdown-body h5,
.markdown-body h6 {
  margin-top: 24px;
  margin-bottom: 16px;
  font-weight: 600;
  line-height: 1.25;
}

.markdown-body h1 {
  font-size: 2em;
}

.markdown-body h1,
.markdown-body h2 {
  padding-bottom: .3em;
  border-bottom: 1px solid #e8e8e8;
  color: #0595bf;
}

.markdown-body h2 {
  font-size: 1.5em;
  color: #0595bf;
}

.markdown-body h3 {
  font-size: 1.25em;
  color: #0595bf;
}

.markdown-body h4 {
  font-size: 1em;
  color: #0595bf;
}

.markdown-body h5 {
  font-size: .875em;
  color: #0595bf;
}

.markdown-body h6 {
  font-size: .85em;
  color: #0595bf;
}

.markdown-body ol,
.markdown-body ul {
  padding-left: 2em;
}

.markdown-body ol ol,
.markdown-body ol ul,
.markdown-body ul ol,
.markdown-body ul ul {
  margin-top: 0;
  margin-bottom: 0;
}

.markdown-body li {
  word-wrap: break-all;
}

.markdown-body li>p {
  margin-top: 16px;
}

.markdown-body li+li {
  margin-top: .25em;
}

.markdown-body dl {
  padding: 0;
}

.markdown-body dl dt {
  padding: 0;
  margin-top: 16px;
  font-size: 1em;
  font-style: italic;
  font-weight: 600;
}

.markdown-body dl dd {
  padding: 0 16px;
  margin-bottom: 16px;
}

.markdown-body table {
  display: block;
  width: 100%;
  overflow: auto;
}

.markdown-body table th {
  font-weight: 600;
}

.markdown-body table td,
.markdown-body table th {
  padding: 6px 13px;
  border: 1px solid #bababa;
}

.markdown-body table tr {
  background-color: #ffffff;
  border-top: 1px solid #bababa;
}

.markdown-body table th {
  background-color: #e8e8e8;
}

.markdown-body table tr:nth-child(2n) {
  background-color: #f9f9f9;
}

.markdown-body img {
  max-width: 100%;
  box-sizing: initial;
}

.markdown-body img[align=right] {
  padding-left: 20px;
}

.markdown-body img[align=left] {
  padding-right: 20px;
}

.markdown-body code {
  padding: .2em .4em;
  margin: 0;
  font-size: 85%;
  background-color: #f8f8f8;
  color: #09844f;
  border-radius: 3px;
}

.markdown-body pre {
  word-wrap: normal;
}

.markdown-body pre>code {
  padding: 0;
  margin: 0;
   font-size: 100%;
  word-break: normal;
  white-space: pre;
  background: transparent;
  border: 0;
}

.markdown-body .highlight {
  margin-bottom: 16px;
}

.markdown-body .highlight pre {
  margin-bottom: 0;
  word-break: normal;
}

.markdown-body .highlight pre,
.markdown-body pre {
  padding: 16px;
  overflow: auto;
  font-size: 85%;
  line-height: 1.45;
  background-color: #f8f8f8;
  border-radius: 3px;
}

.markdown-body pre code {
  display: inline;
  max-width: auto;
  padding: 0;
  margin: 0;
  overflow: visible;
  line-height: inherit;
  word-wrap: normal;
  background-color: initial;
  border: 0;
  color: #09844f;
}

.markdown-body .task-list-item {
  list-style-type: none;
}

.markdown-body .task-list-item+.task-list-item {
  margin-top: 3px;
}

.markdown-body .task-list-item input {
  margin: 0 .2em .25em -1.6em;
  vertical-align: middle;
}
.markdown-body section.footnotes{
    margin-top:48px;
    border-top:solid 1px #e2e2e2;
    padding-top:0px;
}

@media (prefers-color-scheme: dark) {
  .markdown-body mark{color: #111;}
}

/* PrismJS 1.23.0
https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javascript */
/**
 * prism.js default theme for JavaScript, CSS and HTML
 * Based on dabblet (http://dabblet.com)
 * @author Lea Verou
 */


code[class*="language-"],
pre[class*="language-"] {
    color: black;
    background: none;
    font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
    text-align: left;
    white-space: pre;
    word-spacing: normal;
    word-break: normal;
    word-wrap: normal;
    -moz-tab-size: 4;
    -o-tab-size: 4;
    tab-size: 4;

    -webkit-hyphens: none;
    -moz-hyphens: none;
    -ms-hyphens: none;
    hyphens: none;
}

@media print {
    code[class*="language-"],
    pre[class*="language-"] {
        text-shadow: none;
    }
}

/* Code blocks */
pre[class*="language-"] {
    padding: 1em;
    margin: .5em 0;
    overflow: auto;
}

:not(pre) > code[class*="language-"],
pre[class*="language-"] {
    background-color: #f8f8f8;
}

/* Inline code */
:not(pre) > code[class*="language-"] {
    padding: .1em;
    border-radius: .3em;
    white-space: normal;
}

.token.comment,
.token.prolog,
.token.doctype,
.token.cdata {
    color: #008327;
}

.token.punctuation {
    color: #2834ce;
}

.token.namespace {
    opacity: .7;
}

.token.property,
.token.tag,
.token.boolean,
.token.number,
.token.constant,
.token.symbol,
.token.deleted {
    color: #2834ce;
}

.token.selector,
.token.attr-name,
.token.string,
.token.char,
.token.builtin,
.token.inserted {
    color: #d32d26;
}

.token.operator,
.token.entity,
.token.url,
.language-css .token.string,
.style .token.string {
    color: #$$codeBlockColor$$;
}

.token.atrule,
.token.attr-value,
.token.keyword {
    color: #bc319c;
}

.token.function,
.token.class-name {
    color: #967d41;
}

.token.regex,
.token.important,
.token.variable {
    color: #784830;
}

.token.important,
.token.bold {
    font-weight: bold;
}
.token.italic {
    font-style: italic;
}

.token.entity {
    cursor: help;
}


pre[class*="language-"].line-numbers {
  position: relative;
  padding-left: 3.8em;
  counter-reset: linenumber;
}

pre[class*="language-"].line-numbers > code {
  position: relative;
  white-space: inherit;
}

.line-numbers .line-numbers-rows {
  position: absolute;
  pointer-events: none;
  top: 0;
  font-size: 100%;
  left: -3.8em;
  width: 3em; /* works for line-numbers below 1000 lines */
  letter-spacing: -1px;
  border-right: 1px solid #c0c0c0;

  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;

}

  .line-numbers-rows > span {
    display: block;
    counter-increment: linenumber;
  }

    .line-numbers-rows > span:before {
      content: counter(linenumber);
      color: #c0c0c0;
      display: block;
      padding-right: 0.8em;
      text-align: right;
    }


</style> <style>.mweb-charts{background:#fff;}
body{ box-sizing: border-box;
    margin: 0 auto;
    padding: 28px}
@media print{
    pre, code, pre code {
     overflow: visible !important;
     white-space: pre-wrap !important;       /* css-3 */
     white-space: -moz-pre-wrap !important;  /* Mozilla, since 1999 */
     white-space: -pre-wrap !important;      /* Opera 4-6 */
     white-space: -o-pre-wrap !important;    /* Opera 7 */
     word-wrap: break-word !important;       /* Internet Explorer 5.5+ */
    }
    html,body{margin:0;padding:4px;}
}

</style><script>window.MathJax = {     tex: { tags: 'ams', inlineMath: [ ['$','$'], ['\\(','\\)'] ] },     startup: {     pageReady() {       return MathJax.startup.defaultPageReady().then(function () {          window.mweb_mathjax_ready_val = 'yes';          if(window.mweb_mathjax_ready !== undefined){ mweb_mathjax_ready(); }       });     }   }};document.addEventListener('DOMContentLoaded', function(event) {    if (typeof Prism != 'undefined') {         Prism.highlightAll();     }});window.mweb_mathjax_ready_val = '';function theMWebMathJaxRenderIsReady(key){ return window.mweb_mathjax_ready_val; }</script><script>document.addEventListener('DOMContentLoaded', function(event) {window.mweb_mathjax_ready_val = 'yes';})</script></head><body><div id='markdown_content' class='markdown-body'><h1><a id="%E6%95%B0%E5%AD%97%E7%AE%A1%E5%85%BBapp%E7%89%88%E6%9C%AC%E6%9B%B4%E6%96%B0%E8%AE%B0%E5%BD%95" class="anchor" aria-hidden="true"><span class="octicon octicon-link"></span></a>数字管养App版本更新记录</h1>
<p><strong>安卓和iOS（UDID已收录的）测试包下载地址：</strong><br />
<a href="https://www.pgyer.com/szgy">https://www.pgyer.com/szgy</a><br />
接口是外网测试环境 ：<code>https://test.api.xc.whsdzn.com</code></p>
<p><strong>下载二维：</strong><br />
<img src="https://yfmingo.oss-cn-beijing.aliyuncs.com/images/qrcode_www.pgyer.com.png" alt="" /></p>
<blockquote>
<p>本次测试无问题后，今天将按本次节点发布生产包。<br />
上版本v2.4.9截止到1114日的功能。</p>
</blockquote>
<h2><a id="change-log-2022-11-21-09-11-34" class="anchor" aria-hidden="true"><span class="octicon octicon-link"></span></a>change log 2022-11-21 09:11:34</h2>
<ul>
<li>区管理者账号（18168861111）-人员定位-定位要能点开，查看人员信息-包括：头像，姓名，单位，联系，轨迹；</li>
<li>区级道路巡查员（APP）-18168869999-首页点击围栏会有个弹窗（弹窗信息：路段名称，标段名称，描述）</li>
<li>区管理者账号地图首页各种气泡重构。需要重新测试。</li>
</ul>
<h2><a id="change-log-2022-11-20-22-42-13" class="anchor" aria-hidden="true"><span class="octicon octicon-link"></span></a>change log 2022-11-20 22:42:13</h2>
<ul>
<li>各个巡查角色没登录时候不上传 `/v2/api/inspection/city/index/</li>
</ul>
<h2><a id="change-log-2022-11-18-09-10-32" class="anchor" aria-hidden="true"><span class="octicon octicon-link"></span></a>change log  2022-11-18 09:10:32</h2>
<ul>
<li>
<p>各个巡查角色没登录时候不上传 /v2/api/inspection/city/index/setWorkPoint</p>
</li>
<li>
<p>区管理员APP-数据看板-增加板块标题显示-在“本月”上面增加模块标题“辖区内数据”</p>
</li>
<li>
<p>养护单位区级问题详情重构，减少业务代码。</p>
</li>
<li>
<p>巡查督办选择一条道路后，冒泡问题不该被道路遮住</p>
</li>
<li>
<p>巡查督办选择一条道路后，若一条道路上显示两个围栏，选择其中一个围栏，显示的不应该是另一个围栏</p>
</li>
<li>
<p>区级道路班组长app端（19320686868）-我的工单-问题详情-巡查核查-增加“扣的分数”</p>
</li>
<li>
<p>市级巡查员问题描述变为选填。问题描述的位置改到问题分类和处理期限之间。提报第二个问题时，问题分类默认和前一个一样</p>
</li>
<li>
<p>定位功能重构封装。</p>
</li>
<li>
<p>东高区项目-取消巡查员定位与围栏的绑定（改为同公园的巡查方式，先选定围栏，再点击开启巡查）。使用新的定位方式。</p>
</li>
<li>
<p>巡查督办—随手拍提报问题—问题图片增加“从相册中选择”。</p>
</li>
<li>
<p>市级巡查定位重构。</p>
</li>
<li>
<p>区级道路班组长-我的工单-问题详情-巡查核查-增加“扣的分数”</p>
</li>
</ul>
<h2><a id="change-log-2022-11-16-18-34-10" class="anchor" aria-hidden="true"><span class="octicon octicon-link"></span></a>change log  2022-11-16 18:34:10</h2>
<ul>
<li>区级管理APP端-区巡问题管理-问题详情- 流程存在问题（养护整改流程重复出现1次） 账号18168861111</li>
<li>市道路巡查单位APP端（18877887788)-问题管理-待评价-巡查评价问题报错退出到登录界面</li>
<li>数字管养APP——市巡查单位——巡查轨迹——需要修改搜索的刷新界面</li>
<li>市绿服道路管理员（13607108333）-巡查督办-1.选择道路页面未分页；2.养护单位改为巡查单位；</li>
<li>市绿服道路管理员（18168863333）-巡查督办-提报问题-问题分类默认显示“提醒不扣分”</li>
<li>市绿服道路管理员（18168863333）-巡查督办-默认显示当前定位</li>
<li>市绿服道路管理员（18168863333）-巡查督办-选择道路后默认为选中状态（变红），且直接定位到该条道路居中显示在屏幕中，方便直接“开启巡查”</li>
<li>市绿服项目管理员APP端-增加与市绿服道路管理员相同的“巡查督办”功能</li>
<li>市绿服（13999999999）APP-数据看板-评分分类总览环形图-图例显示数据为问题个数，需去掉小数，取整</li>
</ul>
<h2><a id="change-log-2022-11-14-15-53-26" class="anchor" aria-hidden="true"><span class="octicon octicon-link"></span></a>change log 2022-11-14 15:53:26</h2>
<ul>
<li>修复苹果手机问题描述自带输入法无法输入问题。</li>
<li>区级巡查员所属路段选择时候，无道路给出文案提示。</li>
<li>市项目监理/市绿服项目巡查员APP端-问题详情-巡查评价“整改不合格”-问题扣分对应问题分类扣分数（植物养护扣0.1）</li>
</ul>
<h2><a id="change-log-2022-11-11-18-01-34" class="anchor" aria-hidden="true"><span class="octicon octicon-link"></span></a>change log 2022-11-11 18:01:34</h2>
<ul>
<li>巡查督办——APP端巡查督办近三天巡查界面需增加一个选择时间搜索的部分，近三天巡查中选择道路应由区再到具体道路，还要包含巡查时间</li>
<li>市绿服道路督查APP（18168863333)-首页巡查督办-增加当前定位点</li>
<li>新增市级道路巡查单位角色包含：首页地图。问题点位，人员点位，道路路线的选中气泡。人员气泡的轨迹。新增问题列表。问题详情。详情中的申诉列表。申诉详情。巡查轨迹管理地图。巡查轨迹管理搜索项。</li>
</ul>
<h2><a id="change-log-2022-11-11-09-45-38" class="anchor" aria-hidden="true"><span class="octicon octicon-link"></span></a>change log   2022-11-11 09:45:38</h2>
<ul>
<li>巡查督办大模块开发：督查道路列表。 道路线路、轨迹、问题点位对接口。巡查道路相关逻辑。</li>
<li>问题点位相关选中逻辑。开启巡查，结束巡查。</li>
<li>随手拍提交，问题分类。评分细则。草稿箱保存。草稿箱列表，草稿箱详情。删除草稿。督查问题列表。问题详情。</li>
</ul>
<h2><a id="change-log-2022%E5%B9%B411%E6%9C%8810%E6%97%A515-45-40" class="anchor" aria-hidden="true"><span class="octicon octicon-link"></span></a>change log  2022年11月10日15:45:40</h2>
<ul>
<li>公园管理部门app端（17733333333）“待整改”模块文案更改,整改必须上传图片。</li>
<li>市绿服项目巡查员/市项目监理APP端-随手拍存草稿和草稿箱修改问题分类/问题扣分保存无效</li>
<li>市级项目管理app端（13411111111）-项目管理列表显示出界</li>
</ul>
<h2><a id="change-log-2022-11-09-19-09-19" class="anchor" aria-hidden="true"><span class="octicon octicon-link"></span></a>change log 2022-11-09 19:09:19</h2>
<ul>
<li>所有请求头新增 user-agent 记录设备信息</li>
<li>新增一些测试账号。调试模块下登录页新增密码快捷输入。</li>
<li>重构区巡查，市级道路巡查，公园巡查，项目巡查的计时器相关逻辑。</li>
<li>市绿服项目管理员-轨迹管理-适当调整轨迹宽度调整</li>
<li>市绿服项目巡查员/市项目监理（后台&amp;APP）-提报问题默认扣0.1分，读取接口score字段</li>
<li>修复公园问题详情申诉页面页面输入框被键盘遮盖</li>
<li>项目管理巡查员新增草稿箱模块：随手拍页面新增保存草稿箱。新增草稿箱列表。草稿箱详情，删除草稿，提交草稿作为随手拍。</li>
<li>第三方巡查单位——草稿箱管理后台列表增加显示“区”“道路名称” 以及 APP端草稿箱同样增加显示“区”和“道路名称”</li>
<li>市绿服项目巡查员/市项目监理APP端-随手拍-问题图片增加“从相册中选择”</li>
</ul>
<h2><a id="change-log-2022-11-09-08-48-47" class="anchor" aria-hidden="true"><span class="octicon octicon-link"></span></a>change log  2022-11-09 08:48:47</h2>
<ul>
<li>区级道路巡查员问题详情去掉多余的第一次养护处理记录</li>
<li>养护单位角色的区级问题空字段兼容。</li>
<li>所有角色所有接口模型所有字段赋值默认值，兼容接口返null情况</li>
<li>区级道路巡查员-巡查核查-没有输入整改意见的情况下细则显示重复</li>
<li>市绿服项目管理员APP端首页地图显示项目点位及项目有关信息</li>
</ul>
<h2><a id="change-log-2022-11-04-18-53-59" class="anchor" aria-hidden="true"><span class="octicon octicon-link"></span></a>change log  2022-11-04 18:53:59</h2>
<ul>
<li>市级道路巡查随手拍，项目巡查随手拍新增缓存图片。如果没提交下次进页面使用缓存的图片。</li>
<li>区级巡查员首页地图巡查逻辑重构，随手拍重构，精简业务代码。</li>
<li>公园管理处（APP端后台同步修改）-48小时内待评价状态下可以修改整改内容</li>
<li>区巡查员－问题详情内－整改核查中增加扣分的评分细则显示</li>
<li>区级巡查员的问题详情重构业务逻辑，减少冗余代码。</li>
</ul>
<h2><a id="change-log-2022-11-02-19-20-10" class="anchor" aria-hidden="true"><span class="octicon octicon-link"></span></a>change log 2022-11-02 19:20:10</h2>
<ul>
<li>区级巡查员申诉列表重构。精简业务代码</li>
<li>重构所有hud提示。重构所有页面的导航栏，</li>
<li>app在后台运行时候巡查读秒也进行读秒</li>
<li>重构公园轨迹划线逻辑。</li>
<li>重构项目巡查相关逻辑。</li>
</ul>
<h2><a id="change-log-2022-11-01-16-53-11" class="anchor" aria-hidden="true"><span class="octicon octicon-link"></span></a>change log  2022-11-01 16:53:11</h2>
<ul>
<li>市项目管理-巡查员评价问题后-应显示评价扣分项</li>
<li>重构版本更新相关逻辑。安卓端有高版本才更新。</li>
<li>所有角色的问题列表新增显示问题编号，点击可以复制。</li>
<li>登录页新增忘记密码。</li>
<li>公园管理处APP端-首页选择公园网格弹出网格信息框</li>
<li>修复项目巡查员提报页面问题分类接口调错情况。<br />
4公园巡查优化，多网格重叠只选中一个。新增回到我的定位点。市级道路巡查巡查中点击巡查轨迹不提示文案。</li>
</ul>
<h2><a id="change-log-2022-10-28-16-27-28" class="anchor" aria-hidden="true"><span class="octicon octicon-link"></span></a>change log 2022-10-28 16:27:28</h2>
<ul>
<li>
<p>项目管理模块的所有功能需求开发完毕。</p>
</li>
<li>
<p>结束巡检重新对接口。人员经纬度录入对接口。 管理员角色的问题列表和问题详情，问题搜索对接口</p>
</li>
<li>
<p>修复区级领导排行榜划不动</p>
</li>
<li>
<p>项目的数据看吧问题排行扣分排行对接口</p>
</li>
<li>
<p>市道路巡查-区管理员APP端/养护单位APP端/路段长APP端-市级巡查管理和区级巡查管理换位置显示</p>
</li>
<li>
<p>项目管理。项目列表对接口。</p>
</li>
<li>
<p>开始巡检对接口。结束巡检对接口。封装巡检底部操作台</p>
</li>
<li>
<p>巡查员的问题列表对接口。随手拍对接口。问题分类对接口。评分管理对接口。</p>
</li>
<li>
<p>道路市级巡查里程重构，修复一些今天反馈的问题。提交发版。</p>
</li>
<li>
<p>结束巡检重新对接口。人员经纬度录入对接口。 管理员角色的问题列表和问题详情，问题搜索对接口。</p>
</li>
<li>
<p>管理员角色的巡查管理。巡查详情对接口。</p>
</li>
<li>
<p>修复区级领导排行榜划不动</p>
</li>
<li>
<p>管理员的地图首页接口。养护单位的地图首页接口对接。</p>
</li>
<li>
<p>管理员角色数据看基础数据对接口。</p>
</li>
<li>
<p>项目的数据看吧问题排行扣分排行对接口</p>
</li>
<li>
<p>市道路巡查-区管理员APP端/养护单位APP端/路段长APP端-市级巡查管理和区级巡查管理换位置显示</p>
</li>
</ul>
<h2><a id="change-log-2022-10-26-15-58-04" class="anchor" aria-hidden="true"><span class="octicon octicon-link"></span></a>change log  2022-10-26 15:58:04</h2>
<ul>
<li>
<p>打印日志系统重构。项目管理模块：巡查员的项目管理，项目搜索对接口</p>
</li>
<li>
<p>养护单位的项目管理，项目搜索对接口。</p>
</li>
<li>
<p>项目模块：管理员、养护单位、巡检等角色新增评分列表和评分搜索对接口。</p>
</li>
<li>
<p>所有申诉入口新增 请提供相应证明材料进行有效申诉 弹窗拦截提示</p>
</li>
<li>
<p>市级巡查员的问题详情取cityStatusFormat</p>
</li>
<li>
<p>市道路巡查员APP端-首页地图增加“刷新”按钮（用于解决巡查一次，路线不变颜色的问题）</p>
</li>
<li>
<p>区级巡查员文案修改：巡查核查改成巡查评价</p>
</li>
<li>
<p>项目管理。项目列表对接口。开始巡检对接口。结束巡检对接口。封装巡检底部操作台</p>
</li>
<li>
<p>市级道路管理员轨迹管理现在问题点位</p>
</li>
<li>
<p>市级道路巡查随手拍交互按照公园修改处理。</p>
</li>
<li>
<p>市级道路巡查里程放弃鹰眼改成手动计算。</p>
</li>
<li>
<p>随手拍问题输入框弹出被遮盖。</p>
</li>
<li>
<p>iOS端唤起百度地图高德地图导航失败问题修复。</p>
</li>
<li>
<p>项目管理列表布局，对接口。搜索对接口。冻结和解冻对接口。</p>
</li>
<li>
<p>监理管理列表，搜索，冻结和解冻对接口。</p>
</li>
<li>
<p>人员管理列表，搜索，解冻，冻结对接口。</p>
</li>
<li>
<p>单位管理列表，搜索项，冻结，解冻对接口。</p>
</li>
<li>
<p>公园巡查轨迹没有轨迹数据时候暂时提示。</p>
</li>
<li>
<p>放弃鹰眼计算里程。公园巡查的里程距离改成手动计算，重构计算算法。</p>
</li>
<li>
<p>修复巡检过程中点击刷新按钮消失问题。巡检中不能刷新。</p>
</li>
<li>
<p>公园随手拍改成从底部模态弹框让地图展示一部分。</p>
</li>
<li>
<p>调研定位百度地图偶发性白屏问题，修复白屏问题。</p>
</li>
</ul>
<h2><a id="change-log-2022-10-20-16-25-54" class="anchor" aria-hidden="true"><span class="octicon octicon-link"></span></a>change log  2022-10-20 16:25:54</h2>
<ul>
<li>
<p>更换公园端角色的帮助中心。</p>
</li>
<li>
<p>公园巡检气泡点击进入查看大图。</p>
</li>
<li>
<p>修复道路巡查第一次安装定位到海里问题。</p>
</li>
<li>
<p>type121角色兼容120角色所有功能，但是不要草稿箱。</p>
</li>
<li>
<p>公园巡查端待评价文案修改。不合格时候选中默认评分细则。</p>
</li>
<li>
<p>道路巡查实时更新定位点。点击刷新按钮回到当前位置。</p>
</li>
<li>
<p>公园巡查端第一次安装定位到海里；</p>
</li>
<li>
<p>公园巡查-公园管理员APP端-申诉管理新增显示公园名称</p>
</li>
<li>
<p>市级第三方巡查员-整改评价-1.扣分选项默认为“第一次选择的扣分”；2.上传图片由必填改为选填。（注：公园巡查系统同步改）</p>
</li>
<li>
<p>公园模块1021日路演新带回的需求开发</p>
</li>
<li>
<p>公园模块运维组提出的细节优化，新增的一些需求开发，以及自己自测出的问题优化。</p>
</li>
<li>
<p>道路巡检模块管理员新增可以选中道路已经其他新增需求开发。</p>
</li>
<li>
<p>大屏项目卫星地图开发</p>
</li>
<li>
<p>放弃鹰眼计算里程，改成人工手动算法计算里程。目前在公园巡检中试用。</p>
</li>
<li>
<p>定位某些安卓手机百度地图偶发性白屏的原因。调研方案修复地图白屏问题。</p>
</li>
<li>
<p>跑道安卓主板硬件联机调试。可以正常adb远程WiFi安装开发安卓软件。</p>
</li>
</ul>
</div></body></html>